package com.guigu.yh.springcloud.config;

import org.springframework.cloud.gateway.route.RouteLocator;
import org.springframework.cloud.gateway.route.builder.RouteLocatorBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * 网关配置
 *
 * @author 张颖辉（zyh）
 * @version 1.0.0
 * @date 2022/09/13
 */
@Configuration
public class GateWayConfig {
    @Bean
    public RouteLocator cusomRouteLocator(RouteLocatorBuilder routeLocatorBuilder) {
        RouteLocatorBuilder.Builder routes = routeLocatorBuilder.routes();
        /** 网关路由配置
         * 下面路由配置表示，配置一个id为"path_rout_atguigu"的路由规则
         * 它将访问当前服务的请求（如：http://lcoalhost:9527/guonei）自动转发到百度国内新闻频道 http://news.baidu.com/guonei
         * */
        routes.route("path_rout_atguigu", r -> r.path("/guonei").uri("http://news.baidu.com/guonei")).build();
        /** 照猫画虎，网关转发请求到百度新闻的国际频道
         * */
        routes.route("path_rout_atguigu2", r -> r.path("/guoji").uri("http://news.baidu.com/guoji")).build();

        return routes.build();

    }
}
